Course Overview

  • Programming with Embedded Real-time Operating Systems Certificate Program
  • John Hatch January 10, 2011
  • UW Extension - Copyright © 2010 - John Hatch

Who’s teaching this course?

House Keeping

  • Privacy sheet
    • Sign up sheet to OK sharing of phone and e- mail
    • Name and e-mail plus YES to share
  • Class support
    • What worked well in the first class? * Web site, list server, phone calls, ...
  • Class projects
    • Too much, too little, too?

Class

  • Schedule
    • 6:00-9:00 p.m.
    • Mondays, Jan 3-March 14, 2011
    • Tuesday, Jan 18, 2011
    • No class:
      • Jan. 17 & Feb. 21, 2011
  • Attendance
  • Breaks
  • Turn your cell phones to vibrate

Who’s in the class?

  • Name?
  • Does your job involve embedded systems?
    • How? What?
  • What do you want to get out of this class?
    • In general?
    • specific areas?

Course Objectives

  • Exposure to the issues involved in selecting an off-the-shelf OS
  • Basic understanding of operating systems internals.
    • How they can give reasonable, predictable performance under real-time constraints.
  • Bring up an off-the-shelf OS running on the UW development platform.
  • Projects that include:
    • Creation of coordinated interrupt servicing under real-time conditions.
    • Creation of a device driver for an off-the-shelf OS.
    • Creation of a system with multiple real-time performance constraints.
  • Utilization of off-the-shelf embedded and real-time operating system as part of a project.

Course Grading

  • Assignments 1-4
  • Course Project - 30%
  • Final Exam - 30 %
  • Participation in discussions and forums - 30%
  • You may work on homework with other class members.
    • If you work with others on any homework you must tell me who when you turn the assignment in via e- post.
  • The final is not collaborative, but it is open notes, open book.

Schedule

Class Date Topics Assignment Due
1 01/03 Embedded systems overview What’s real-time? System tools. μBio and objectives Download sources 01/10
2 01/10 Exceptions and stacks Timer Interrupt and uCOS build 02/18
3 01/18* Intro to uCOS. Data sharing, deadlocks, priority inversion Working uCOS port 01/31
4 01/24 Interrupts, exceptions, recursion and reentrancy    
5 01/31 Synchronization primitives MP3 Project Design start 03/08
6 02/07 Taking to hardware, device drivers    
7 02/14 Top down design MP3 Project 03/07
8 02/28 Design continued    
9 03/07 Virtual Memory, processes    
10 03/14 Review, Final Final 3/21